package com.redside.view;

import java.io.Serializable;
import java.util.Date;

import com.redside.model.Business;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

/**
 * @author PCHAPMAN
 * This is the view that is used during the Business Associator
 * Wizard.  See BusinessAssociatorFormController.java
 *
 */
public class BusinessAssociatorView implements Serializable
{
    private static final long serialVersionUID = 8987217234072934228L;
    private Business business;
    private Long businessId;
    private Long businessCategoryId;
    private String countyId;
    private Long exemptLkp;
    private Long natureOfComplaintId;
    private String natureOfComplaintText;
    private Long nonActionableId;
    private String nonActionableText;
    private boolean actionable;
    private boolean exempt;
    private boolean existingBusiness;
    private Date complaintDate;
    private String complaintText;
    //checkbox values
    private boolean checkBusinessName = true;
    private boolean checkBusinessAddress1;
    private boolean checkBusinessAddress2;
    private boolean checkBusinessCity;
    private boolean checkBusinessZip;
    private boolean checkBusinessPhone;
    
    private String businessMatchMode;
    private String addressMatchMode;
    /**
     * @return the business
     */
    public Business getBusiness() {
        return business;
    }
    /**
     * @param business the business to set
     */
    public void setBusiness(Business business) {
        this.business = business;
    }
    
    /**
     * @return the businessId
     */
    public Long getBusinessId() {
        return businessId;
    }
    /**
     * @param businessId the businessId to set
     */
    public void setBusinessId(Long businessId) {
        this.businessId = businessId;
    }
    /**
     * @return the businessCategoryId
     */
    public Long getBusinessCategoryId() {
        return businessCategoryId;
    }
    /**
     * @param businessCategoryId the businessCategoryId to set
     */
    public void setBusinessCategoryId(Long businessCategoryId) {
        this.businessCategoryId = businessCategoryId;
    }
    /**
     * @return the countyId
     */
    public String getCountyId() {
        return countyId;
    }
    /**
     * @param countyId the countyId to set
     */
    public void setCountyId(String countyId) {
        this.countyId = countyId;
    }
    /**
     * @return the exemptLkp
     */
    public Long getExemptLkp() {
        return exemptLkp;
    }
    /**
     * @param exemptLkp the exemptLkp to set
     */
    public void setExemptLkp(Long exemptLkp) {
        this.exemptLkp = exemptLkp;
    }
    /**
     * @return the natureOfComplaintId
     */
    public Long getNatureOfComplaintId() {
        return natureOfComplaintId;
    }
    /**
     * @param natureOfComplaintId the natureOfComplaintId to set
     */
    public void setNatureOfComplaintId(Long natureOfComplaintId) {
        this.natureOfComplaintId = natureOfComplaintId;
    }
    /**
     * @return the natureOfComplaintText
     */
    public String getNatureOfComplaintText() {
        return natureOfComplaintText;
    }
    /**
     * @param natureOfComplaintText the natureOfComplaintText to set
     */
    public void setNatureOfComplaintText(String natureOfComplaintText) {
        this.natureOfComplaintText = natureOfComplaintText;
    }
    /**
     * @return the nonActionableId
     */
    public Long getNonActionableId() {
        return nonActionableId;
    }
    /**
     * @param nonActionableId the nonActionableId to set
     */
    public void setNonActionableId(Long nonActionableId) {
        this.nonActionableId = nonActionableId;
    }
    /**
     * @return the nonActionableText
     */
    public String getNonActionableText() {
        return nonActionableText;
    }
    /**
     * @param nonActionableText the nonActionableText to set
     */
    public void setNonActionableText(String nonActionableText) {
        this.nonActionableText = nonActionableText;
    }
    /**
     * @return the actionable
     */
    public boolean isActionable() {
        return actionable;
    }
    /**
     * @param actionable the actionable to set
     */
    public void setActionable(boolean actionable) {
        this.actionable = actionable;
    }
    /**
     * @return the exempt
     */
    public boolean isExempt() {
        return exempt;
    }
    /**
     * @param exempt the exempt to set
     */
    public void setExempt(boolean exempt) {
        this.exempt = exempt;
    }
    /**
     * @return the existingBusiness
     */
    public boolean isExistingBusiness() {
        return existingBusiness;
    }
    /**
     * @param existingBusiness the existingBusiness to set
     */
    public void setExistingBusiness(boolean existingBusiness) {
        this.existingBusiness = existingBusiness;
    }
    /**
     * @return the complaintDate
     */
    public Date getComplaintDate() {
        return complaintDate;
    }
    /**
     * @param complaintDate the complaintDate to set
     */
    public void setComplaintDate(Date complaintDate) {
        this.complaintDate = complaintDate;
    }
    /**
     * @return the complaintText
     */
    public String getComplaintText() {
        return complaintText;
    }
    /**
     * @param complaintText the complaintText to set
     */
    public void setComplaintText(String complaintText) {
        this.complaintText = complaintText;
    }
    /**
     * @return the checkBusinessName
     */
    public boolean isCheckBusinessName() {
        return checkBusinessName;
    }
    /**
     * @param checkBusinessName the checkBusinessName to set
     */
    public void setCheckBusinessName(boolean checkBusinessName) {
        this.checkBusinessName = checkBusinessName;
    }
    /**
     * @return the checkBusinessAddress1
     */
    public boolean isCheckBusinessAddress1() {
        return checkBusinessAddress1;
    }
    /**
     * @param checkBusinessAddress1 the checkBusinessAddress1 to set
     */
    public void setCheckBusinessAddress1(boolean checkBusinessAddress1) {
        this.checkBusinessAddress1 = checkBusinessAddress1;
    }
    /**
     * @return the checkBusinessAddress2
     */
    public boolean isCheckBusinessAddress2() {
        return checkBusinessAddress2;
    }
    /**
     * @param checkBusinessAddress2 the checkBusinessAddress2 to set
     */
    public void setCheckBusinessAddress2(boolean checkBusinessAddress2) {
        this.checkBusinessAddress2 = checkBusinessAddress2;
    }
    /**
     * @return the checkBusinessCity
     */
    public boolean isCheckBusinessCity() {
        return checkBusinessCity;
    }
    /**
     * @param checkBusinessCity the checkBusinessCity to set
     */
    public void setCheckBusinessCity(boolean checkBusinessCity) {
        this.checkBusinessCity = checkBusinessCity;
    }
    /**
     * @return the checkBusinessZip
     */
    public boolean isCheckBusinessZip() {
        return checkBusinessZip;
    }
    /**
     * @param checkBusinessZip the checkBusinessZip to set
     */
    public void setCheckBusinessZip(boolean checkBusinessZip) {
        this.checkBusinessZip = checkBusinessZip;
    }
    /**
     * @return the checkBusinessPhone
     */
    public boolean isCheckBusinessPhone() {
        return checkBusinessPhone;
    }
    /**
     * @param checkBusinessPhone the checkBusinessPhone to set
     */
    public void setCheckBusinessPhone(boolean checkBusinessPhone) {
        this.checkBusinessPhone = checkBusinessPhone;
    }
    /**
     * @return the businessMatchMode
     */
    public String getBusinessMatchMode() {
        return businessMatchMode;
    }
    /**
     * @param businessMatchMode the businessMatchMode to set
     */
    public void setBusinessMatchMode(String businessMatchMode) {
        this.businessMatchMode = businessMatchMode;
    }
    /**
     * @return the addressMatchMode
     */
    public String getAddressMatchMode() {
        return addressMatchMode;
    }
    /**
     * @param addressMatchMode the addressMatchMode to set
     */
    public void setAddressMatchMode(String addressMatchMode) {
        this.addressMatchMode = addressMatchMode;
    }
	/**
	 * @see java.lang.Object#toString()
	 */
	public String toString() {
		return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE).append(
				"actionable", this.actionable).append("complaintText",
				this.complaintText).append("countyId", this.countyId).append(
				"nonActionableId", this.nonActionableId).append("business",
				this.business).append("exempt", this.exempt).append(
				"checkBusinessAddress1", this.checkBusinessAddress1).append(
				"exemptLkp", this.exemptLkp).append("existingBusiness",
				this.existingBusiness).append("checkBusinessPhone",
				this.checkBusinessPhone).append("checkBusinessAddress2",
				this.checkBusinessAddress2).append("businessMatchMode",
				this.businessMatchMode).append("checkBusinessName",
				this.checkBusinessName).append("checkBusinessCity",
				this.checkBusinessCity).append("businessId", this.businessId)
				.append("natureOfComplaintText", this.natureOfComplaintText)
				.append("addressMatchMode", this.addressMatchMode).append(
						"complaintDate", this.complaintDate).append(
						"businessCategoryId", this.businessCategoryId).append(
						"checkBusinessZip", this.checkBusinessZip).append(
						"natureOfComplaintId", this.natureOfComplaintId)
				.append("nonActionableText", this.nonActionableText).toString();
	}
    
    
}